A viewer of “real-time” video cannot normally perform the kinds of “trick” functions, such as pause, play, fast forward, or reverse, that are available for recorded video.
By providing a system that can play back stored material while simultaneously and continuously storing the real-time video signal, it is possible to create a user experience that is the same for both “real-time” and pre-recorded material. The play back can be delayed (time-shifted) by as much as the storage size, and as little as the system delay, referred to as “near real time”. The trick functions then can be provided from the stored version.
In such a system, when real time channel changes (“channel surfing” in popular lingo) are required, the newly selected input signal must go through the whole system and be encoded, stored, and decoded before it is visible to the viewer. This causes a disconcerting time delay making a channel change operation appear sluggish. As seen in FIG. 1, a time-shifted system 10 may use a digitized, uncompressed video signal 12 that is derived from an incoming broadcast analog TV signal or other source. Signal 12 is encoded (compressed into, e.g., MPEG format) in an encoder 14. A host controller 20 then writes the compressed frames in a storage buffer 24 (e.g., a hard disk). For viewing, the host controller 20 reads (reading and writing occur simultaneously) the compressed video from the storage buffer and delivers it to a video decoder 18. The video decoder produces a time-shifted decoded uncompressed output 28 that is displayed to the viewer.
The delay between the input signal and the time-shifted decoded output will vary depending on system hardware and software implementation as well as compression technique used.
The same issue holds true for compressed digital broadcast signals. As seen in FIG. 2, in a set-top box using a time-shifted system, the input is a transport signal 13 that carries multiplexed compressed (e.g., MPEG) digital video signals. A transport de-multiplexer 15 provides demultiplexed compressed signals that the host controller stores and delivers as in FIG. 1.